package sistema.controleVendas.persistencia;

import java.util.List;

import javax.persistence.EntityManager;

import sistema.controleVendas.entidades.Estoque;

public class GerenciarEstoquePersistencia {
	EntityManager em = Conexao.contectar();
	public void adicionarEstoque(Estoque estoque){
		em.getTransaction().begin();
		em.persist(estoque);
		em.getTransaction().commit();
	}
	public void atualizarEstoque(Estoque estoque){
		em.getTransaction().begin();
		em.persist(estoque);
		em.getTransaction().commit();
	}
	public void removerEstoque(Estoque estoque){
		em.getTransaction().begin();
		em.remove(estoque);
		em.getTransaction().commit();
	}
	public List<Estoque> listarEstoque(){
		return em.createQuery("Select e From Estoque e").getResultList();
	}
	public Estoque buscarEstoque(Estoque estoque){
		return (Estoque)em.createQuery("Select e From Estoque e Where e.id=:param")
		.setParameter("param", estoque.getId()).getSingleResult();
	}
	public Estoque buscarEstoquePorProduto(Estoque estoque){
		return (Estoque)em.createQuery("Select e From Estoque e Where e.produto.id=:param")
		.setParameter("param", estoque.getProduto().getId()).getSingleResult();
	}


}
